<!DOCTYPE html>
<html>
<head lang="en">
    <meta charset="UTF-8">
    <title>人员角色</title>
    <#include "../../commonFile/quote.ftl"/>
    <script>
        //全局变量baseUserRole
        var baseUserRole = {};
        baseUserRole.userId;

        //初始化表格
        baseUserRole.tableInit = function(){
            $("#baseUserRoleTable").bootstrapTable({
                url:'/systembaserole/selectbaserole',  //获取表格数据
                contentType:'application/x-www-form-urlencoded; charset=UTF-8',//使用post传参，去掉后无法成功
                method: "post",
                toolbar:"#baseUserRoleToolbar",
                cache: false,            //禁用ajax缓存
                striped: true,           //表格显示条纹
                pagination: true,        //在底部显示分页组件
                pageList: [10, 20],       //设置页面可以显示的数据条数
                pageSize: 10,             // 页面数据条数
                pageNumber: 1,            // 首页页码
                sidePagination: 'server', // 设置为服务器端分页
                showColumns:true,        //是否显示内容列下拉框
                showToggle:false,         //切换详细视图和列表视图
                queryParamsType: '',
                queryParams:function (params){   //请求服务器数据时，添加额外参数
                    return {
                        pageSize:params.pageSize, // 每页要显示的数据条数
                        pageNum:params.pageNumber,    // 页码
                        account:$("#searchName").val()
                    }
                },
                idField:'id',             //指定主键列
                columns:[{
                    checkbox: true,   //显示一个勾选框
                    align: 'center'   //居中显示
                },{
                    field:'name',  //返回json中的name
                    title:'角色名称',   //表格表头显示文字
                    align:'center',   //左右居中
                    valign: 'middle' // 上下居中
                },{
                    field:'orgid',
                    title:'组织机构ID',
                    align:'center',
                    valign: 'middle',
                },{
                    field:'orgtype',
                    title:'组织类别',
                    align:'center',
                    valign: 'middle',
                    // formatter: function (value, row, index) {
                    //     return new Date(value).toLocaleString();
                    // }
                },{
                    field:'isyes',
                    title:'是否有效',
                    align:'center',
                    valign: 'middle',
                    formatter: function (value ,row, index) {
                        var value="";
                        if(row.isyes=="1"){
                            value="是";
                        }else {
                            value="否";
                        }
                        return value;
                    }
                },
                ]
            });
        };
     
        //查询按钮点击事件
        baseUserRole.search = function () {
            $("#baseUserRoleTable").bootstrapTable("refresh",{silent: true})
        };

        //新增-保存人员角色关系
        baseUserRole.save = function () {
            debugger;
            var selections = $("#baseUserRoleTable").bootstrapTable('getSelections');
            var userRole = {};
            var roleId = [];
            for(var i=0; i<selections.length; i++){
                roleId.push(selections[i].id);
            }
            userRole.userId = baseUserRole.userId;
            userRole.roleId = roleId;
            //将userRole对象序列化成字符串，方法strinify()
            var userRoleJSON = JSON.stringify(userRole);
            $.ajax({
                type:"post",
                url:'/systembaseuserrole/saveuserrole',
                data:{userRoleJSON:userRoleJSON},
                async: false,
                dataType: 'json',
                success: function (result) {

                   alert("success!")
                }
            })

        }
        //文档就绪事件
        $(function () {
            baseUserRole.scanHeight = $(window).height();
            $.ajax({
                type: 'post',
                url: '/systembaseuserrole/agyusertree',
                async: false,
                dataType: 'json',
                success: function (result) {
                    //初始化treeView
                    $('#tree').treeview({
                        highlightSelected: true,//当选择节点时是否高亮显示。
                        showBorder: true,//是否在节点上显示边框。
                        showImage: true,
                        showIcon:true,
                        data: result.data,
                        onNodeSelected: function (event,node) {
                            baseUserRole.userId=node.id;
                            //获取当前节点的子节点
                            var children = node.nodes;
                            //如果没有子节点，则查询该人员的角色信息
                            if (!children){
                                $.ajax({
                                    method:'post',
                                    url:'/systembaseuserrole/getuserrole',
                                    async: false,
                                    data:{userId:baseUserRole.userId},
                                    dataType:'json',
                                    success:function(result){
                                        //保存后台出传回来的角色id
                                        var roleIdArray = [];
                                        for(var j = 0; j< result.data.length; j++){
                                            roleIdArray.push(result.data[j].roleId);
                                        }
                                        $('#baseUserRoleTable').bootstrapTable('uncheckAll');
                                        $("#baseUserRoleTable").bootstrapTable("checkBy", {field:"id", values:roleIdArray});
                                    },
                                    error:function (result) {
                                        alert("请求失败！");
                                    }
                                })
                            }
                        }
                    });
                }
            });
            baseUserRole.tableInit();
        });
    </script>
</head>
<body>
<div class="container-fluid">
    <div class="row" style="display: flex">
        <div class="col-xs-3">
            <div style="width: 99%;height: 100%;" id="tree"></div>
        </div>
        <!--表格-->
        <div class="col-xs-9">
            <table id="baseUserRoleTable" class="table  table-striped table-bordered table-hover"></table>
            <div id="baseUserRoleToolbar" class="toolbar" role="toolbar">
                <form class="form-inline" role="form">
                    <div class="form-group">
                        <label class="xs-only" for="searchName">名称：</label>
                        <input type="text" class="form-control input-sm" id="searchName" placeholder="请输入角色名称">
                    </div>
                    <button class="btn btn-default btn-sm btn-info" type="button" onclick="baseUserRole.search()">查询</button>
                    <button class="btn btn-default btn-sm btn-success" type="button" onclick="baseUserRole.save()">保存</button>
                </form>
            </div>
        </div>
    </div>
</div>
</body>
</html>